The present disclosure relates to a semiconductor device. For example, the present disclosure relates to a search memory.
A memory device called a search memory or a CAM (content addressable memory) searches stored data words for a data word that matches a search word. When a matching data word is found, such a memory device outputs its address.
The CAM comes in two types, namely a BCAM (binary CAM) and a TCAM (ternary CAM). Each memory cell of the BCAM stores “0” or “1” as information. Meanwhile, each memory cell of the TCAM is capable of storing “Don't Care” as information in addition to “0” and “1”. In the present example, the symbol “*” is used to represent “Don't Care”. The symbol “*” indicates that the information may be either “0” or “1”.
TCAM devices are widely used in routers for networks, such as the Internet, in order to perform an address search and provide access control. To provide a large capacity, the TCAM devices usually include multiple arrays and perform a simultaneous search operation on the included arrays.
The TCAM devices are capable of comparing input search data (input packets) and TCAM cell data all at once. Therefore, the TCAM devices are faster in all search applications than RAMs (random-access memories).
More specifically, the TCAM devices include match lines (MLs) for comparing data stored in a memory cell with data that a user wants to search for, and indicating whether or not the data match with each other.
The TCAM devices are configured so as to output address information (hit-index) associated with a matched match line.
In recent years, the number of CAM arrays is increased to enlarge the capacities of CAMs.
Further, proposed are methods of executing search processes in parallel by using multiple search keys (U.S. Pat. Nos. 6,374,326 and 9,159,420).